package aerolinea;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Collection;
import utils.Busqueda;
import asiento.Asiento;
import com.lanchita.AerolineaLanchita;


public class LanchitaAdapter extends Aerolinea {
	
	public LanchitaAdapter(){
		this.setPorcentajeImpuesto(new BigDecimal ("0.15"));
	}
	


	
	public Collection<Asiento> obtenerAsientosDisponibles(Busqueda busqueda){
		return this.darleFormaLinda(AerolineaLanchita.getInstance().asientosDisponibles(busqueda.getOrigen(), busqueda.getDestino(), busqueda.getFechaSalida(), busqueda.getFechaLlegada(),busqueda.getHoraSalida(),busqueda.getHoraLlegada()));
	}

	private Collection<Asiento> darleFormaLinda(String[][] asientosDisponibles) {
		
		Collection<Asiento> asientosFormateados= new ArrayList<Asiento>();
		Asiento asiento;
		for ( int i = 0; i < asientosDisponibles.length  ; i++ ){
			asiento = new Asiento();
			asiento.setCodigoAsiento(asientosDisponibles[i][0]);
			//asiento.setPrecio(asientosDisponibles[i][1]); //TODO PRECIO
			asiento.setClaseAsiento(asientosDisponibles[i][2]);
			asiento.setUbicacionEnAvion(asientosDisponibles[i][3]);
			asiento.setEstado(asientosDisponibles[i][4]);
			
			asientosFormateados.add(asiento);
		}
	
		return asientosFormateados;	
	
	}

	@Override
	public void comprarAsiento(Asiento asiento) {
		AerolineaLanchita.getInstance().comprar(asiento.getCodigoAsiento());
	}
	
}
